Method for Online Direct Estimation and Compensation of Flux and Torque Errors in Electric Drives

ABSTRACT

An online method of detecting and compensating for errors in flux estimation in operation of a motor system. The method includes determining a voltage compensation term by comparing an expected voltage and an actual voltage. The method also includes determining a flux compensation term by passing the voltage compensation term through a low-pass filter, and determining a corrected flux component value by comparing the flux compensation term with a flux value obtained from a look-up table, wherein the low-pass filter receives operating parameters based on data regarding an operating environment of the motor system. The method then further determines a corrected torque value based on the corrected flux component value.

BACKGROUND

The present disclosure relates to an online method of detecting and compensating for errors in flux estimation during operation of a motor system.

Permanent magnet electric motors (PM e-motors) are used in electric vehicle (EV) powertrains. The control algorithms of these e-motors are developed in microprocessors using e-motor software (SW). These control algorithms indirectly control the torque to its command by regulating the current components to their commands, which are in turn calculated based on the torque command and flux calibration tables of the motor. On the other hand, the achieved torque is estimated based on the sensed current components and the flux calibration tables. Therefore, in order to achieve the desired performance, it is important to ensure the accuracy of the SW calibration tables. Any error in SW calibration tables reduces the accuracy of the torque control process. Such errors are inevitable—the motor features non-linear behavior, the accuracy of measurement devices is limited, and the motor permanent magnet flux is dependent on the motor's temperature, which in turn is dependent on a large number of performance variables. An online (i.e. real-time, in operation) method as a supplement or alternative to calibration tables to estimate and compensate for the flux errors can improve the torque accuracy of electric motor drives.

Some previous online methods have been proposed to estimate the errors in flux tables of the motor. These previously proposed methods have different problems such as 1) indirect calculation of flux errors without full control over the dynamic behavior of the compensation and 2) no simultaneous compensation of the flux, actual torque, and estimated torque at the same time. It is desirable to find an online method of flux estimation that can both detect and control for flux, actual torque, and estimated torque.

SUMMARY

Disclosed herein is a novel online estimation and compensation algorithm. This proposed method directly calculates the amount of errors in the flux values and compensates for the errors with a low-pass filter with a determined transient behavior. It then compensates the torque values such that the actual and estimated torques are also compensated at the same time. To set up this control algorithm, a mathematical analysis is first performed to study the behavior of the flux values with control variables in e-motor drives.

Disclosed herein is an online method of detecting and compensating for errors in flux estimation during operation of a motor system. In one embodiment, the method comprises determining a voltage compensation term by comparing an expected voltage and an actual voltage, determining a flux compensation term by passing the voltage compensation term through a low-pass filter, and determining a corrected flux component value by comparing the flux compensation term with a look-up table flux value. In one embodiment, the low-pass filter receives operating parameters based on data regarding an operating environment of the motor system. In another disclosed embodiment, the method further determines a corrected torque value based on the corrected flux component value.

In another disclosed embodiment, the received operating parameters include at least one of a cutoff frequency and a period length. In another disclosed embodiment, data regarding the operating environment of the vehicle includes data regarding at least one of heat, aging, and saturation of at least one component of the motor system.

Other aspects, features, and techniques will be apparent to one skilled in the relevant art in view of the following detailed description of the embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, objects, and advantages of the disclosed embodiments will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout and wherein:

FIG. 1 is a perspective view depicting an exemplary embodiment of an electric vehicle that may include an electric motor drive system.

FIG. 2 is a flow diagram depicting the structure of an exemplary electric motor drive system for use in electric vehicles.

FIG. 3 is a side view depicting an exemplary embodiment of an electric motor for use in an electric vehicle.

FIG. 4 is a block diagram depicting an exemplary embodiment of reference current calculation.

FIG. 5 is a block diagram depicting an exemplary embodiment of a flux compensation algorithm.

FIG. 6 is a block diagram depicting an exemplary embodiment of a torque compensation algorithm.

DETAILED DESCRIPTION

One aspect of the disclosure is directed to an online method of detecting and compensating for errors during flux estimation during operation of a motor system.

References throughout this document to “one embodiment,” “certain embodiments,” “an embodiment,” or similar term mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of such phrases in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner on one or more embodiments without limitation. For example, two or more of the innovative methods described herein may be combined in a single method, but the application is not limited to the specific exemplary combinations of methods that are described herein.

As used herein, the terms “a” or “an” shall mean one or more than one. The term “plurality” shall mean two or more than two. The term “another” is defined as a second or more. The terms “including” and/or “having” are open ended (e.g., comprising). The term “or” as used herein is to be interpreted as inclusive or meaning any one or any combination. Therefore, “A, B or C” means “any of the following: A; B; C; A and B; A and C; B and C; A, B and C”. An exception to this definition will occur only when a combination of elements, functions, steps or acts are in some way inherently mutually exclusive.

As used herein, the term “online” acts above and hereinafter as an adjective to describe a task performed by a system while the system is in operation or active service. This is in contrast to offline tasks performed in a laboratory setting, with the results then compiled for use in a look-up table.

The character “N” refers hereinafter to the last member of a set or the total count of members in a set. The character “X” refers hereinafter to a variable member of a set. The characters “A”, “B”, “C”, etc. refer to a specific but otherwise undefined member of a set.

For ease of reference, a list of the variables used throughout the document is provided as follows:

-   -   v_(d), v_(q): voltage components (d- and q-axes)     -   v_(d) ^(exp), v_(q) ^(exp): expected voltage components (d- and         q-axes)     -   Δv_(d), Δv_(q): voltage compensation terms (d- and q-axes)     -   i_(d), i_(q): current components (d- and q-axes)     -   i_(d) ^(cmd), i_(q) ^(cmd): commanded current components (d- and         q-axes)     -   ψ_(d), ψ_(q): flux components (d- and q-axes)     -   ψ_(d) ^(LUT), ψ_(q) ^(LUT): flux components, based on look-up         table (d- and q-axes)     -   ψ_(PM): permanent magnet flux     -   ω: synchronous rotor speed     -   L_(d), L_(q): stator inductance (d- and q-axes)     -   L_(d) ^(LUT), L_(q) ^(LUT): stator inductance, based on look-up         table (d- and q-axes)     -   P: motor pole count     -   R: stator resistance     -   T: actual torque     -   T^(cmd): commanded torque     -   T^(cmd,new): commanded torque, corrected

A detailed description of various embodiments is provided; however, it is to be understood that the disclosed embodiments are merely exemplary and may be embodied in various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the disclosed embodiments.

FIG. 1 is a perspective view depicting an exemplary embodiment of an electric vehicle 100 that may include an electric motor drive system 200. The electric vehicle 100 shown in FIG. 1 is exemplary. The electric motor drive system 200 may be installed in any vehicle employing an electric motor drive system, including but not limited to hybrid vehicles.

FIG. 2 is a flow diagram depicting the structure of an exemplary electric motor drive system 200 in electric vehicles 100. In one embodiment, the proposed flux and torque compensation algorithm is a part of the e-motor SW implemented on the control board 210 of the inverter 220. The control board 210 is supposed to control the inverter 220 in such a manner as to achieve the commanded torque value for the electric motor 230 with a good dynamic and steady-state response.

FIG. 3 is a side view depicting an exemplary embodiment of an electric motor 230 for an electric vehicle 100. In one embodiment, the electric motor 230 includes a rotor 231 and a stator 232 with a plurality of stator coils 232 _(1-P), where P is the number of stator coils 232 comprising the stator 232 (here, P=6). In one embodiment, the rotor 231 may include a permanent magnet. In one embodiment, the stator coils 232 _(1-P) may receive power from the inverter 220 to produce a magnetic field by means of space vector pulse width modulation. In one embodiment, the electric motor drive system 200 rotates the magnetic field of the stator 232 in order to induce rotation in the rotor 231 and propel the electric vehicle 100.

FIG. 4 is a block diagram depicting an exemplary embodiment of reference current calculation. In one embodiment of an electric motor drive system 200, the commanded current components (i_(d) ^(cmd) and i_(q) ^(cmd)) are first calculated from the commanded torque (T^(cmd)) and flux based on look-up tables (LUTs) as shown in FIG. 4. Then, in one embodiment, the current controllers regulate the current components to these commands by applying appropriate voltage components. In one embodiment, while in a steady state condition, the control SW applies the following voltage components to the inverter 221, assuming that the variables used in Eq. (1) and (2) are the actual values of motor variables:

v _(d) =Ri _(d) −ωL _(q) i _(q) =Ri _(d)−ωψ_(q),  (1)

v _(q) =Ri _(q)+ω×(L _(d) i _(d)+ψ_(PM))=Ri _(q)+ωψ_(d),  (2)

where v_(d) and v_(q) are the voltage components; i_(d) and i_(q) are the current components; ψ_(d) and ψ_(q) are the flux components, ψ_(PM) is the permanent magnet flux; R is the stator 232 resistance; ω is the synchronous rotor 231 speed; and L_(d) and L_(q) are the stator 232 inductances in d- and q-axes. In one embodiment, by controlling the current components of the electric motor, the following electromagnetic torque is produced:

$\begin{matrix} {T = {{\frac{3}{2}{\frac{P}{2}\left\lbrack {{\psi_{PM}i_{q}} + {\left( {L_{d} - L_{q}} \right)i_{d}i_{q}}} \right\rbrack}} = {\frac{3}{2}{{\frac{P}{2}\left\lbrack {{\psi_{d}i_{q}} - {\psi_{q}i_{d}}} \right\rbrack}.}}}} & (3) \end{matrix}$

where P is the number of motor poles. Typically, the LUTs in the SW are calibrated based on the assumption of a standard operating condition (constant temperature, minimal component wear and tear, etc.). However, in practice, operating conditions may not be constant due to aging, heat, and saturation, all of which can result in an error in flux calculations. Consequently, the actual torque Tis rarely equal to T^(cmd), and a compensation algorithm is needed.

FIG. 5 is a block diagram depicting an exemplary embodiment of a flux compensation algorithm 500 that may be implemented on the control board and microprocessor 210. In one embodiment, to overcome the shortcoming in applying the commanded torque value T^(cmd) and to compensate for the error, the flux compensation algorithm 500 calculates and mitigates the flux error by introducing new variables: Expected Voltage Components. In one embodiment of this algorithm 500, the expected voltage components (v_(d) ^(exp) and v_(q) ^(exp)) are compared with the actual voltages (v_(d) and v_(q)) applied to the inverter 220 to directly calculate the error in flux components. Then, in one embodiment, the errors are reduced to zero with a determined dynamic using a low-pass filter with specific time constants. In one embodiment, the expected voltage components are calculated as

v _(d) ^(exp) =Ri _(d)−ω(L _(q) ^(LUT) i _(q))=Ri _(d)−ωψ_(q) ^(LUT),  (4)

v _(q) ^(exp) =Ri _(q)+ω×(L _(d) ^(LUT) i _(d)+ψ_(PM) ^(LUT))=Ri _(q)+ωψ_(d) ^(LUT),  (5)

where v_(d) ^(exp) and v_(q) ^(exp) are the expected voltage components; and ψ_(d) ^(LUT), ψ_(q) ^(LUT), L_(d) ^(LUT), and L_(q) ^(LUT) are the look-up table-based flux and inductance values. In one embodiment, the compensation terms (Δv_(d) and Δv_(g)) can be derived based on the difference between the actual and expected voltage components as

$\begin{matrix} \begin{matrix} {{\Delta v_{d}} = {{v_{d} - v_{d}^{\exp}} = {- {\omega\left( {{L_{q}i_{q}} - {L_{q}^{LUT}i_{q}}} \right)}}}} \\ {= {- {\omega\left( {\psi_{q} - \psi_{q}^{LUT}} \right)}}} \\ {{= {{- \omega}{\Delta\psi}_{q}}},} \end{matrix} & (6) \\ \begin{matrix} {{\Delta v_{q}} = {{v_{q} - v_{q}^{\exp}} = {= {\omega \times \left( {{L_{d}i_{d}} + \psi_{PM} - {L_{d}^{LUT}i_{d}} + \psi_{PM}^{LUT}} \right)}}}} \\ {= {\omega\left( {\psi_{d} - \psi_{d}^{LUT}} \right)}} \\ {{= {\omega\Delta\psi}_{d}},} \end{matrix} & (7) \end{matrix}$

where the actual values of the flux components in steady state are

$\begin{matrix} {{\psi_{d} = {{\psi_{d}^{LUT} + {\Delta\psi}_{d}} = {\psi_{d}^{LUT} + \frac{\Delta v_{q}}{\omega}}}},} & (8) \\ {\psi_{q} = {{\psi_{q}^{LUT} + {\Delta\psi}_{q}} = {\psi_{q}^{LUT} - {\frac{\Delta v_{d}}{\omega}.}}}} & (9) \end{matrix}$

It should be noted that these relations between actual and expected flux values are valid in steady state conditions. Therefore, the proposed algorithm uses low-pass filters to make flux values move from their LUT values toward their actual values calculated in (8) and (9) as shown in FIG. 5. In one embodiment, the low-pass filters have specific and predetermined time constants that ensure control over the dynamic response of the compensations.

The low-pass filter may be configured to receive operating parameters based on data regarding an operating environment of the motor system. These received operating parameters may include at least one of a cutoff frequency and a period length. The data regarding the operating environment of the vehicle may include data regarding at least one of heat, aging, and saturation of at least one component of the motor system. Various standard and conventional sensors may be provided for obtaining the data and providing the data to the controller for use in configuring the low-pass filter.

In one embodiment, the flux compensation algorithm 500 estimates the flux components using the difference between the actual and expected voltage components and low-pass filters with specific time constants. The implementation of the flux compensation algorithm 500 is simple and not computationally heavy for microprocessors such as the microprocessor of the inverter control board 210.

FIG. 6 is a block diagram depicting an exemplary embodiment of a torque compensation algorithm 600 that may be implemented on the control board and microprocessor 210. In one embodiment, the torque compensation algorithm 600 compensates for the difference between the estimated torque and commanded torque to increase the torque accuracy and torque command tracking capabilities of the drive system 200. In one embodiment, when the errors in flux components are calculated and compensated as per the flux compensation algorithm 500, the new flux values can be used in (3) to compensate for the estimated torque error as such:

$\begin{matrix} {{{\Delta T} = {\frac{3}{2}{\frac{P}{2}\left\lbrack {{\left( {\Delta\psi}_{d} \right)i_{q}} - {\left( {\Delta\psi}_{q} \right)i_{d}}} \right\rbrack}}},} & (10) \end{matrix}$

which increases the torque accuracy of the drive system 200. In addition, the difference between the torque values ΔT (calculated using actual fluxes and LUT fluxes) is then added to the torque command T^(cmd) to achieve a more accurate torque command T^(cmd,new) and increase the torque command tracking capability of the system 200.

While this disclosure makes reference to exemplary embodiments, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the claimed embodiments. 

1-8. (canceled)
 9. A computer-implemented method when executed on a microprocessor causes the microprocessor to perform operations comprising: receiving a torque command for powering an electric motor drive system, the electric motor drive system comprising an electric motor and an inverter; determining a voltage compensation term based on an expected voltage and an actual voltage; determining, using a low-pass filter, a flux compensation term based on the voltage compensation term and data regarding an operating environment of the electric motor drive system; correcting the torque command based on the flux compensation term; and commanding the inverter to provide power to the electric motor to output an actual torque equal to the corrected torque command.
 10. The computer-implemented method of claim 9, wherein the microprocessor resides on a control board of the inventor.
 11. The computer-implemented method of claim 9, wherein the electric motor comprises a rotor and a stator having a plurality of stator coils.
 12. The computer-implemented method of claim 11, wherein each stator coil of the plurality of stator coils generates a magnetic field when the inverter provides the power to the electric motor.
 13. The computer-implemented method of claim 11, wherein the rotor comprises a permanent magnet.
 14. The computer-implemented method of claim 9, wherein determining the voltage compensation term comprises determining the voltage compensation term based on a difference between the expected voltage and the actual voltage.
 15. The computer-implemented method of claim 9, wherein the low-pass filter is configured to receive at least one of a cutoff frequency or a period length.
 16. The computer-implemented method of claim 9, wherein the low-pass filter comprises a specific time constant and a predetermined time constant, wherein the specific time constant and the predetermined time constant ensures control over a dynamic response of the corrected torque command.
 17. The computer-implemented method of claim 9, wherein the data regarding the operating environment of the vehicle comprises data regarding at least one of heat, aging, or saturation of at least one component of the electric motor drive system.
 18. The computer-implemented method of claim 9, wherein correcting the torque command comprises adding the flux compensation term to an uncorrected torque command.
 19. An electric motor drive system comprising: an electric motor configured to rotate a wheel of a vehicle; an inverter configured to power the electric motor; and a microprocessor executing instructions that cause the microprocessor to perform operations comprising: receiving a torque command for powering the electric motor drive system; determining a voltage compensation term based on an expected voltage and an actual voltage; determining, using a low-pass filter, a flux compensation term based on the voltage compensation term and data regarding an operating environment of the electric motor drive system; correcting the torque command based on the flux compensation term; and commanding the inverter to provide power to the electric motor to output an actual torque equal to the corrected torque command
 20. The electric motor drive system of claim 19, w wherein the microprocessor resides on a control board of the inventor.
 21. The electric motor drive system of claim 19, wherein the electric motor comprises a rotor and a stator having a plurality of stator coils.
 22. The electric motor drive system of claim 21, wherein each stator coil of the plurality of stator coils generates a magnetic field when the inverter provides the power to the electric motor.
 23. The electric motor drive system of claim 21, wherein the rotor comprises a permanent magnet.
 24. The electric motor drive system of claim 19, wherein determining the voltage compensation term comprises determining the voltage compensation term based on a difference between the expected voltage and the actual voltage.
 25. The electric motor drive system of claim 19, wherein the low-pass filter is configured to receive at least one of a cutoff frequency or a period length.
 26. The electric motor drive system of claim 19, wherein the low-pass filter comprises a specific time constant and a predetermined time constant, wherein the specific time constant and the predetermined time constant ensures control over a dynamic response of the corrected torque command.
 27. The electric motor drive system of claim 19, wherein the data regarding the operating environment of the vehicle comprises data regarding at least one of heat, aging, or saturation of at least one component of the electric motor drive system.
 28. The electric motor drive system of claim 19, wherein correcting the torque command comprises adding the flux compensation term to an uncorrected torque command. 